package cn.iocoder.yudao.module.jifenyuan.convert.roomlog;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;

import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomlog.vo.RoomLogCreateReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomlog.vo.RoomLogPageReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.roomlog.vo.RoomLogUpdateReqVO;
import cn.iocoder.yudao.module.jifenyuan.dal.dataobject.roomlog.RoomLogWithInfoDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.jifenyuan.controller.app.roomlog.vo.*;
import cn.iocoder.yudao.module.jifenyuan.dal.dataobject.roomlog.RoomLogDO;

/**
 * 记分员 房间记录 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface RoomLogConvert {

    RoomLogConvert INSTANCE = Mappers.getMapper(RoomLogConvert.class);

    RoomLogDO convert(AppRoomLogCreateReqVO bean);

    RoomLogDO convert(AppRoomLogUpdateReqVO bean);
    AppRoomLogCreateReqVO convert(RoomLogCreateReqVO bean);
    AppRoomLogUpdateReqVO convert(RoomLogUpdateReqVO bean);
    AppRoomLogPageReqVO convert(RoomLogPageReqVO bean);

    AppRoomLogRespVO convert(RoomLogDO bean);


    List<AppRoomLogRespVO> convertList(List<RoomLogDO> list);

    PageResult<AppRoomLogRespVO> convertPage(PageResult<RoomLogDO> page);

    List<AppRoomLogExcelVO> convertList02(List<RoomLogDO> list);
    List<RoomLogWithInfoDO> convertList03(List<RoomLogDO> list);
    List<AppRoomLogWithInfoRespVO> convertList04(List<RoomLogWithInfoDO> list);

}
